package com.kmxd.ams.infra.utils;

import cn.hutool.core.util.ObjectUtil;
import com.kmxd.ams.client.system.ISysFondsSvc;
import com.kmxd.ams.client.system.vo.SysFondsVO;
import com.kmxd.ams.core.common.constant.Constants;
import com.kmxd.ams.infra.system.entity.SysFonds;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

/**
 * 获取e表的表名
 *
 * @author zuolg
 */
@Component
public class EfileTableNameUtil {

  @Autowired private ISysFondsSvc sysFondsSvc;

  /**
   * 获取电子文件表名
   *
   * @param fondsId
   * @return
   */
  public String getTableName(Long fondsId) {
    if (ObjectUtil.isEmpty(fondsId)) {
      return null;
    }
    SysFondsVO fondsVO = sysFondsSvc.view(fondsId);
    if (ObjectUtil.isEmpty(fondsVO)) {
      return null;
    }
    String tableName = Constants.TABLE_NAME_EFILE + "_" + fondsVO.getAutoIndex();
    return tableName;
  }

  /**
   * 获取电子文件表名
   *
   * @param fonds
   * @return
   */
  public String getTableName(SysFonds fonds) {
    if (ObjectUtil.isEmpty(fonds)) {
      return null;
    }
    String tableName = Constants.TABLE_NAME_EFILE + "_" + fonds.getAutoIndex();
    return tableName;
  }

  /**
   * 获取电子文件表名
   *
   * @param autoIndex
   * @return
   */
  public String getTableName(Integer autoIndex) {
    if (ObjectUtil.isEmpty(autoIndex)) {
      return null;
    }
    String tableName = Constants.TABLE_NAME_EFILE + "_" + autoIndex;
    return tableName;
  }
}
